#include <stdio.h>
#include <sys/stat.h>
#include <sys/types.h>

int main(int argc, char const *argv[])
{
    int iRet = mkdir("./mydir", 0777);
    if ( iRet < 0 )
    {
        perror("fail mkdir");
        return -1;
    }

    return 0;
}

/*
程序功能:
  创建一个目录, 并设置目录的owner, group, others的读写执行的权限

涉及函数
  mkdir

知识要点
  mkdir的第二个参数 mode_t
    为一个三位的8进制数, 一共9bits
    分别表示三类用户的访问权限:  
      user group others
      rwx   rwx   rwx

  umask: 当创建被创建时, 系统为文件的访问权限设定一个掩码.
    如果此时 umask 为 0002 , 含义为: "禁止 others 的 w 权限 ( 可以通过 umask 命令查看)
    且此时创建文件时的参数 mote_t 为 0777, 含义为: 所有用户的所有权限都打开 
    则最终文件的访问权限为: 0777 & ~0002 = 0775
    可参考: <Linux程序设计> p85
    ls -l 查看mydir的权限为 rwxrwxw-x 即为 0775

*/
